package com.mtgdeckbuilder.shared.dto;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * The Data Transfer Object that represents a deck.
 * 
 * @author Nicolas Deslandes
 */
@SuppressWarnings("serial")
public class DeckDTO implements Serializable {

   private String name;

   private List<CardDTO> cards;

   private String color;

   /**
    * The empty constructor. Initialisation of the arrays.
    */
   public DeckDTO() {
      cards = new ArrayList<CardDTO>();
   }

   public void reset() {
      name = null;
      cards = new ArrayList<CardDTO>();
   }

   /**
    * @return the name.
    */
   public String getName() {
      return name;
   }

   /**
    * @param name the name to set.
    */
   public void setName(final String name) {
      this.name = name;
   }

   /**
    * @return the cards.
    */
   public List<CardDTO> getCards() {
      return cards;
   }

   /**
    * @param cards the cards to set.
    */
   public void setCards(final List<CardDTO> cards) {
      this.cards = cards;
   }

   /**
    * @param color the color to set.
    */
   public void setColor(final String color) {
      this.color = color;
   }

   /**
    * @return the color.
    */
   public String getColor() {
      return color;
   }

}
